package org.dding.msc.service.listener;

import org.dding.msc.service.ServiceController;
import org.dding.msc.service.ServiceController.Transition;
import org.dding.msc.service.ServiceListener;

/**
 * An abstract implementation of a service listener whose methods do nothing.
 * 
 * @param <S>
 *            the service type
 * 
 */
public class AbstractServiceListener<S> implements ServiceListener<S> {

	public void listenerAdded(ServiceController<? extends S> controller) {
	}

	public void transition(ServiceController<? extends S> controller,
			Transition transition) {
	}

	public void serviceRemoveRequested(ServiceController<? extends S> controller) {
	}

	public void serviceUnavailable(ServiceController<? extends S> controller) {
	}

	public void serviceAvailable(ServiceController<? extends S> controller) {
	}

	public void transitiveServiceUnavailable(
			ServiceController<? extends S> controller) {
	}

	public void transitiveServiceAvailable(
			ServiceController<? extends S> controller) {
	}
}
